package com.mdd.front.service.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.mdd.common.core.PageResult;
import com.mdd.common.entity.service.AnnualService;
import com.mdd.front.validate.PageParam;
import com.mdd.front.validate.service.AnnualServiceParam;
import com.mdd.front.vo.service.AnnualServiceDetailVo;
import com.mdd.front.vo.service.AnnualServiceListVo;

import java.util.Map;

/**
 * 包年服务使用记录服务接口类
 */
public interface IAnnualServiceService extends IService<AnnualService>{

    /**
     * 包年服务使用记录列表
     *
     * @param pageParam 分页参数
     * @param params 搜索参数
     * @return PageResult<AnnualServiceVo>
     */
    PageResult<AnnualServiceListVo> list(PageParam pageParam, Map<String, String> params);

    /**
     * 包年服务使用记录详情
     *
     * @param id 主键ID
     * @return AnnualService
     */
    AnnualServiceDetailVo detail(Integer id);

    /**
     * 包年服务使用记录新增
     *
     * @param annualServiceParam 参数
     */
    void add(AnnualServiceParam annualServiceParam);

    /**
     * 包年服务使用记录编辑
     *
     * @param annualServiceParam 参数
     */
    void edit(AnnualServiceParam annualServiceParam);

    /**
     * 包年服务使用记录删除
     *
     * @param id 主键ID
     */
    void del(Integer id);

    AnnualServiceDetailVo getOrderNum(Integer orderId, Integer userId);

}
